package com.ccf.business.knowledge.service;

import com.ccf.business.knowledge.model.vo.LabelTaskVO;
import com.ccf.business.knowledge.model.LabelTask;
import com.common.model.result.PageResult;
import com.common.model.pojo.Query;
import com.service.mybatis.service.ISuperFlagService;
import com.service.mybatis.service.ISuperService;


/**
 * 标注任务
 *
 * @author ccf
 * @date 2022-02-15 16:56:10
 */
public interface ILabelTaskService extends ISuperFlagService<LabelTask> {

    /**
     * 列表
     * @param query
     * @return
     */
    PageResult<LabelTaskVO> findList(Query query);

    /**
     * 保存和更新所有
     * @param labelTask
     */
    String saveOrUpdateAll(LabelTaskVO labelTask);

    /**
     * 提交任务
     * @param id
     */
    void submit(String id);

    /**
     * 修改任务状态
     * @param id
     */
    void change(String id, Integer status);

    /**
     * 逻辑删除任务
     * @param ids
     */
    @Override
    void logicRemoveByIds(String...ids);

    /**
     * 查询详情
     * @param id
     * @return
     */
    LabelTaskVO detail(String id);

    /**
     * 标注列表
     * @param query
     * @return
     */
    PageResult labelList(Query query);

    /**
     * 审核列表
     * @param query
     * @return
     */
    PageResult auditList(Query query);

    /**
     * 数据梳理
     * @param id 任务id
     * @return
     */
    void dataTidy(String id);
}

